package com.ruoyi.system.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.system.domain.vo.InspectionPeriodVO;
import lombok.Data;
import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.List;

/**
 * 巡检计划(InspectionPlan)实体类
 * @since 2022-11-29 13:49:27
 */
@Data
public class InspectionPlan implements Serializable {
    private static final long serialVersionUID = 313456457347206711L;
    
    private Integer id;
    /**
     * 计划编号
     */
    private String planCode;
    /**
     * 计划名称
     */
    private String planName;
    /**
     * 计划状态
     */
    private String planState;
    /**
     *
     * 计划类型
     */
    private String planType;
    /**
     * 开始时间
     */
    //private String planStartTime;
    /**
     * 结束时间
     */
   // private String planEndTime;
    /**
     * 计划执行人员
     */
    private String planUserNames;
    /**
     * 计划执行人员名称
     */
    private String planUserIds;
    /**
     * 部门ID
     */
    private Integer planDeptId;
    /**
     * 部门名称
     */
    private String planDeptName;
    /**
     * 巡检路线ID
     */
    private Integer routeId;
    /**
     * 巡检路线
     */
    private String routeName;
    /**
     * 备注
     */
    private String remarks;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    //周期表ID
    private Integer periodId;

    //时段名称
    private String periodTimeName;

    //责任人ID
    private Integer personId;

    //责任人名称
    private String personName;

    //责任部门ID
    private String personDeptId;

    //责任部门名称
    private String personDeptName;

    // 状态（0-已发布 1-未发布）
    private Integer fbState;

    // 审核状态（1待审核、2已审核、3驳回）
    private Integer checkStatus;

    //驳回意见
    private String rejectOpinion;

    // 发起人ID
    private Integer initiatorId;

    // 发起人名称
    private String initiatorName;

    // 审核进度
    private String checkJd;

    // 巡检范围
    private String checkScope;
    // 频次类型
    private String frequencyType;
    // 开始时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String startTime;
    // 结束时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private String endTime;
    // 巡检类型（日常巡检，专业巡检）
    private String inspectorType;

    private List<InspectionPeriodVO> periodList;

}

